/**
 * @function jsonwebtoken(jwt)服务
 * @author anytao
 * @created 2016-07-15
 * @version 1.0
 */

'use strict';

import jwt from 'jsonwebtoken'; //引入jwt

let secret = 'anytao';
let expiresIn = ''; //token有效期

export default class extends think.service.base {
  /**
   * init
   * @return {}         []
   */
  init(...args) {
    super.init(...args);
  }

  /**
   * @description 创建token
   * @param {Object} userinfo 用户信息
   * @return 返回token
   */
  createToken(userinfo) {

    let result = jwt.sign(userinfo, secret);
    return result;
  }

  /**
   * @description 验证token
   * @param token 用户请求token
   * @return 返回错误或者解密过的token
   */
  verifyToken(token) {

    if (token) {

      try {
        let result = jwt.verify(token, secret);
        return result;
      } catch (error) {
        //验证失败 提示用户需要重新登录
        return 'fail';
      }
    }
    return 'fail';
  }
}